#include<stdio.h>
#include<string.h>
#include<sys/types.h>
#include<unistd.h>
#include <stdlib.h>
extern char **environ; // 必须加入声明
int main(int argc,char*argv[])
{
	if (fork() == 0)
	{
		printf("子进程开始打印 env\n");
		for(int i = 0;environ[i];i++)
		{
			printf("environ[%d] ->%s\n",i,environ[i]);
		}
	}
	printf("父进程睡眠3m\n");
	sleep(3);
	return 0;
}
//int main(int argc,char*argv[])
//{
//	(void) argc;
//	(void) argv;
//	for(int i = 0;environ[i];i++)
//	{
//		printf("environ[%d] -> %s\n",i,environ[i]);
//	}
//	return 0;
//}

//int main(int argc,char*argv[],char* env[])
//{
//	(void) argc;
//	(void) argv;
//	(void) env;
//	const char* who = getenv("USER");
//	if (who==NULL) return 1;
//	if (strcmp(who,"xxhh")==0)
//	{
//		printf("用户名: %s,该功能只能xxhh用户使用\n",who);
//	}	
//	else
//	{
//		printf("该用户%s不能使用这个功能\n",who);
//	}
//	return 0;
//}
//int main(int argc,char*argv[],char* env[])
//{	
//	(void) argc;
//	(void) argv;
//	(void) env;
//	char* value = getenv("PATH");
//	if (value == NULL) return 1;
//	else
//		printf("PATH:%s\n",value);
//	
//	return 0;
//}
//int main(int argc,char*argv[],char* env[])
//{	
//	(void) argc;
//	(void) argv;
//	for(int i = 0;env[i];i++)
//	{
//		printf("env[%d]-> %s\n",i,env[i]);
//	}
//
//	return 0;
//}



//int main(int argc,char*argv[])
//{
//	if (argc != 2)
//	{
//		printf("Usages: %s [-a|-b|-c]\n",argv[0]);
//		return 0;
//	}
//	const char* arg = argv[1];
//	if (strcmp(arg,"-a")==0)
//	{
//		printf("这是功能1\n");
//	}
//	else if (strcmp(arg,"-b")==0)
//	{
//		printf("这是功能2\n");
//	}
//	else if (strcmp(arg,"-c")==0)
//	{
//		printf("这是功能3\n");
//	}else
//	{
//		printf("%s %s is not [-a|-b|-c]\n",argv[0],arg);
//	}
//	return 0;
//}


//int main(int argc,char* argv[])
//{
//	for(int i = 0; i < argc ; i++)
//	{
//		printf("argv[%d]: %s\n",i,argv[i]);	
//	}
//
//	return 0;
//}
